import {useIntl} from "umi";

let intl: any = null;

function get_exist_intl() {
  if (intl) {
    return intl;
  } else {
    intl = useIntl()
    return intl;
  }
}

const IntlMessage: React.FC<{
  id: string;
  defaultMessage: string;
}> = (props) => {
  return get_exist_intl().formatMessage({
    id: props.id,
    defaultMessage: props.defaultMessage,
  })
}

export function IntlInit(id: string, defaultMessage?: string) {
  // return get_exist_intl().formatMessage({
  //   id: id,
  //   defaultMessage: defaultMessage === undefined ? id : defaultMessage
  // })
  // const _intl_helper = (key: string, defaultString: string | any = null, _prefix: any = null): { _key: string } => {
  //   if (!defaultString) defaultString = key
  //   let _key = prefix + '.' + key
  //   if (_prefix) {
  //     _key = _prefix + '.' + key
  //   }
  //   // return <IntlMessage = {_key}
  //   // defaultMessage = {defaultString}
  //   // />
  //   return <Intl
  // }
  // return _intl_helper
}
